#define _CRT_SECURE_NO_WARNINGS	

typedef struct ListNode ListNode;
struct ListNode* reverseList(struct ListNode* head)
{
    if (!head)
        return head;
    else
    {
        ListNode* n1 = NULL, * n2, * n3;
        n2 = head;
        n3 = n2->next;
        while (n2)
        {
            n2->next = n1;
            n1 = n2;
            n2 = n3;
            if (n3)
                n3 = n3->next;
        }
        return n1;
    }
}